[INFO] cloning repository https://github.com/nkitsaini/gekko-challenges
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/nkitsaini/gekko-challenges" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkitsaini%2Fgekko-challenges", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkitsaini%2Fgekko-challenges'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 17b4a0ec291bb25860bd05991ca8853d9868d363
[INFO] testing nkitsaini/gekko-challenges against try#b8e88e5ddf5521a9f43ee3f62a702388c713e4bb for pr-155114
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkitsaini%2Fgekko-challenges" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config
[INFO] started tweaking git repo https://github.com/nkitsaini/gekko-challenges
[INFO] finished tweaking git repo https://github.com/nkitsaini/gekko-challenges
[INFO] tweaked toml for git repo https://github.com/nkitsaini/gekko-challenges written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nkitsaini/gekko-challenges on toolchain b8e88e5ddf5521a9f43ee3f62a702388c713e4bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nkitsaini/gekko-challenges already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[ERROR] error running command: no output for 300 seconds
[INFO] testing nkitsaini/gekko-challenges against try#b8e88e5ddf5521a9f43ee3f62a702388c713e4bb for pr-155114
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fnkitsaini%2Fgekko-challenges" "/workspace/builds/worker-4-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-4-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-4-tc2/source/.cargo/config
[INFO] started tweaking git repo https://github.com/nkitsaini/gekko-challenges
[INFO] finished tweaking git repo https://github.com/nkitsaini/gekko-challenges
[INFO] tweaked toml for git repo https://github.com/nkitsaini/gekko-challenges written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/nkitsaini/gekko-challenges on toolchain b8e88e5ddf5521a9f43ee3f62a702388c713e4bb
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/nkitsaini/gekko-challenges already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded term_size v0.3.2
[INFO] [stderr]   Downloaded serde_derive v1.0.171
[INFO] [stderr]   Downloaded pbr v1.1.1
[INFO] [stderr]   Downloaded windows-targets v0.48.1
[INFO] [stderr]   Downloaded itoa v1.0.8
[INFO] [stderr]   Downloaded serde v1.0.171
[INFO] [stderr]   Downloaded semver v1.0.18
[INFO] [stderr]   Downloaded plotters-backend v0.3.5
[INFO] [stderr]   Downloaded is-terminal v0.4.9
[INFO] [stderr]   Downloaded plotters-svg v0.3.5
[INFO] [stderr]   Downloaded oorandom v11.1.3
[INFO] [stderr]   Downloaded ryu v1.0.14
[INFO] [stderr]   Downloaded proc-macro2 v1.0.64
[INFO] [stderr]   Downloaded unicode-ident v1.0.10
[INFO] [stderr]   Downloaded bitflags v2.3.3
[INFO] [stderr]   Downloaded criterion-plot v0.5.0
[INFO] [stderr]   Downloaded quote v1.0.29
[INFO] [stderr]   Downloaded clap v4.3.15
[INFO] [stderr]   Downloaded criterion v0.5.1
[INFO] [stderr]   Downloaded serde_json v1.0.102
[INFO] [stderr]   Downloaded plotters v0.3.5
[INFO] [stderr]   Downloaded clap_builder v4.3.15
[INFO] [stderr]   Downloaded syn v2.0.25
[INFO] [stderr]   Downloaded rustix v0.38.4
[INFO] [stderr]   Downloaded zzz v0.3.1
[INFO] [stderr]   Downloaded linux-raw-sys v0.4.3
[INFO] [stderr]   Downloaded half v1.8.2
[INFO] [stderr]   Downloaded ciborium-io v0.2.1
[INFO] [stderr]   Downloaded ciborium-ll v0.2.1
[INFO] [stderr]   Downloaded ciborium v0.2.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ed0f1677da7611a4aaeccee233013042fe3040e74f5236b41b120d70e5edef45
[INFO] running `Command { std: "docker" "start" "-a" "ed0f1677da7611a4aaeccee233013042fe3040e74f5236b41b120d70e5edef45", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ed0f1677da7611a4aaeccee233013042fe3040e74f5236b41b120d70e5edef45", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ed0f1677da7611a4aaeccee233013042fe3040e74f5236b41b120d70e5edef45", kill_on_drop: false }`
[INFO] [stdout] ed0f1677da7611a4aaeccee233013042fe3040e74f5236b41b120d70e5edef45
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] dc190310fede88cd9fef75e68a5ec340dfb397c285f583e9ddd5af772c6be7f8
[INFO] running `Command { std: "docker" "start" "-a" "dc190310fede88cd9fef75e68a5ec340dfb397c285f583e9ddd5af772c6be7f8", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.64
[INFO] [stderr]    Compiling quote v1.0.29
[INFO] [stderr]    Compiling unicode-ident v1.0.10
[INFO] [stderr]    Compiling libc v0.2.147
[INFO] [stderr]    Compiling smallvec v1.11.0
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling serde v1.0.171
[INFO] [stderr]    Compiling lock_api v0.4.10
[INFO] [stderr]    Compiling syn v1.0.109
[INFO] [stderr]    Compiling parking_lot_core v0.9.8
[INFO] [stderr]    Compiling serde_json v1.0.102
[INFO] [stderr]    Compiling nibble_vec v0.1.0
[INFO] [stderr]    Compiling endian-type v0.1.2
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling ryu v1.0.14
[INFO] [stderr]    Compiling itoa v1.0.8
[INFO] [stderr]    Compiling radix_trie v0.2.1
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling itertools v0.11.0
[INFO] [stderr]    Compiling syn v2.0.25
[INFO] [stderr]    Compiling term_size v0.3.2
[INFO] [stderr]    Compiling pbr v1.1.1
[INFO] [stderr]    Compiling zzz v0.3.1
[INFO] [stderr]    Compiling parking_lot v0.12.1
[INFO] [stderr]    Compiling serde_derive v1.0.171
[INFO] [stderr]    Compiling derive_more v0.99.17
[INFO] [stderr]    Compiling decrypt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `zzz::ProgressBar`
[INFO] [stdout]  --> src/iter_product.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zzz::ProgressBar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stdout]  --> src/iter_product.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/iter_product.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (count == 0) {
[INFO] [stdout]    |                ^          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (count == 0) {
[INFO] [stdout] 50 +             if count == 0  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radix_trie::Trie`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use radix_trie::Trie;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use serde;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBar`
[INFO] [stdout]  --> src/iter_product.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zzz::ProgressBar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stdout]  --> src/iter_product.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/iter_product.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (count == 0) {
[INFO] [stdout]    |                ^          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (count == 0) {
[INFO] [stdout] 50 +             if count == 0  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mapper`
[INFO] [stdout]    --> src/main.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let mapper: &'static Mapper = Box::leak(Box::new(Mapper::new()));
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mapper`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `START_CHAR` is never used
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const START_CHAR: char = 'a';
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JOINS` is never used
[INFO] [stdout]   --> src/main.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const JOINS: [(char, char); 13] = [
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHARS` is never used
[INFO] [stdout]   --> src/main.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const CHARS: &'static str = "abcdefghijklmnopqrstuvwxyz";
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MESSAGE` is never used
[INFO] [stdout]   --> src/main.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const MESSAGE: &'static str = "nbvp kcesh mcrn tu g wzcj lklurj ryqf bpyj gx tm \
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_possible_jumps` is never used
[INFO] [stdout]   --> src/main.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn get_possible_jumps() -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_variants` is never used
[INFO] [stdout]   --> src/main.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn get_variants(chr: char) -> Vec<char> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mapper` is never constructed
[INFO] [stdout]   --> src/main.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Mapper {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/main.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl Mapper {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 80 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_loc` is never used
[INFO] [stdout]   --> src/main.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn to_loc(val: char) -> u8 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_loc` is never used
[INFO] [stdout]   --> src/main.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn from_loc(val: u8) -> char {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SizedPermutation` is never constructed
[INFO] [stdout]    --> src/main.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct SizedPermutation<I: Iterator> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SizedPermutationIter` is never used
[INFO] [stdout]    --> src/main.rs:125:7
[INFO] [stdout]     |
[INFO] [stdout] 125 | trait SizedPermutationIter: Iterator {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_word` is never used
[INFO] [stdout]    --> src/main.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn process_word(word: &str) -> impl Iterator<Item = String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_valid_decryptions` is never used
[INFO] [stdout]    --> src/main.rs:184:4
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn show_valid_decryptions(word: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_word_threaded` is never used
[INFO] [stdout]    --> src/main.rs:198:4
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn process_word_threaded(word: &str, start: usize, count: usize) -> impl Iterator<Item = String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_valid_decryptions_threaded` is never used
[INFO] [stdout]    --> src/main.rs:217:4
[INFO] [stdout]     |
[INFO] [stdout] 217 | fn show_valid_decryptions_threaded(word: &str, thread_count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_word_lengths` is never used
[INFO] [stdout]    --> src/main.rs:261:4
[INFO] [stdout]     |
[INFO] [stdout] 261 | fn show_word_lengths() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_connections_used` is never used
[INFO] [stdout]    --> src/main.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn show_connections_used(word_orig: &str, word_enc: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `Shift` is never used
[INFO] [stdout]  --> src/chars.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | pub trait Shift {
[INFO] [stdout]   |           ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `FixedMultiProductIterator` is never constructed
[INFO] [stdout]  --> src/iter_product.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct FixedMultiProductIterator<I>
[INFO] [stdout]   |            ^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `build`, `permuts`, `letters`, and `forward` are never used
[INFO] [stdout]   --> src/iter_product.rs:18:8
[INFO] [stdout]    |
[INFO] [stdout] 13 | / impl<I> FixedMultiProductIterator<I>
[INFO] [stdout] 14 | | where
[INFO] [stdout] 15 | |     I: Sized + Clone,
[INFO] [stdout]    | |_____________________- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 18 |       fn build(&self) -> Vec<I> {
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |       fn permuts(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |       fn letters(&self) -> usize {
[INFO] [stdout]    |          ^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |       pub fn forward(&mut self, mut count: usize) {
[INFO] [stdout]    |              ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `FixedMultiProductIter` is never used
[INFO] [stdout]   --> src/iter_product.rs:57:11
[INFO] [stdout]    |
[INFO] [stdout] 57 | pub trait FixedMultiProductIter: Iterator {
[INFO] [stdout]    |           ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 11.02s
[INFO] running `Command { std: "docker" "inspect" "dc190310fede88cd9fef75e68a5ec340dfb397c285f583e9ddd5af772c6be7f8", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "dc190310fede88cd9fef75e68a5ec340dfb397c285f583e9ddd5af772c6be7f8", kill_on_drop: false }`
[INFO] [stdout] dc190310fede88cd9fef75e68a5ec340dfb397c285f583e9ddd5af772c6be7f8
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 27f7a165bbcc1ae8163e72f5489c3c006c5e2a1e7bf6c616d15710a70064d3ef
[INFO] running `Command { std: "docker" "start" "-a" "27f7a165bbcc1ae8163e72f5489c3c006c5e2a1e7bf6c616d15710a70064d3ef", kill_on_drop: false }`
[INFO] [stderr]    Compiling crossbeam-utils v0.8.16
[INFO] [stderr]    Compiling memoffset v0.9.0
[INFO] [stderr]    Compiling serde v1.0.171
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.15
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling rayon-core v1.11.0
[INFO] [stderr]    Compiling rustix v0.38.4
[INFO] [stderr]    Compiling num_cpus v1.16.0
[INFO] [stderr]    Compiling ciborium-io v0.2.1
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling anstyle v1.0.1
[INFO] [stderr]    Compiling plotters-backend v0.3.5
[INFO] [stderr]    Compiling regex-syntax v0.7.4
[INFO] [stderr]    Compiling linux-raw-sys v0.4.3
[INFO] [stderr]    Compiling bitflags v2.3.3
[INFO] [stderr]    Compiling clap_lex v0.5.0
[INFO] [stderr]    Compiling plotters-svg v0.3.5
[INFO] [stderr]    Compiling crossbeam-channel v0.5.8
[INFO] [stderr]    Compiling clap_builder v4.3.15
[INFO] [stderr]    Compiling crossbeam-deque v0.8.3
[INFO] [stderr]    Compiling ciborium-ll v0.2.1
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling walkdir v2.3.3
[INFO] [stderr]    Compiling regex-automata v0.3.3
[INFO] [stderr]    Compiling is-terminal v0.4.9
[INFO] [stderr]    Compiling rayon v1.7.0
[INFO] [stderr]    Compiling pbr v1.1.1
[INFO] [stderr]    Compiling plotters v0.3.5
[INFO] [stderr]    Compiling clap v4.3.15
[INFO] [stderr]    Compiling serde_json v1.0.102
[INFO] [stderr]    Compiling ciborium v0.2.1
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling oorandom v11.1.3
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling once_cell v1.18.0
[INFO] [stderr]    Compiling regex v1.9.1
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling decrypt v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `zzz::ProgressBar`
[INFO] [stdout]  --> src/iter_product.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zzz::ProgressBar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stdout]  --> src/iter_product.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/iter_product.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (count == 0) {
[INFO] [stdout]    |                ^          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (count == 0) {
[INFO] [stdout] 50 +             if count == 0  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stdout] warning: unused import: `zzz::ProgressBar`
[INFO] [stdout]  --> src/iter_product.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zzz::ProgressBar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stdout]  --> src/iter_product.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/iter_product.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (count == 0) {
[INFO] [stdout]    |                ^          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (count == 0) {
[INFO] [stdout] 50 +             if count == 0  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `radix_trie::Trie`
[INFO] [stdout]  --> src/main.rs:6:5
[INFO] [stdout]   |
[INFO] [stdout] 6 | use radix_trie::Trie;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `serde`
[INFO] [stdout]   --> src/main.rs:11:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | use serde;
[INFO] [stdout]    |     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBar`
[INFO] [stdout]  --> src/iter_product.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use zzz::ProgressBar;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stdout]  --> src/iter_product.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around `if` condition
[INFO] [stdout]   --> src/iter_product.rs:50:16
[INFO] [stdout]    |
[INFO] [stdout] 50 |             if (count == 0) {
[INFO] [stdout]    |                ^          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]    |
[INFO] [stdout] 50 -             if (count == 0) {
[INFO] [stdout] 50 +             if count == 0  {
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `mapper`
[INFO] [stdout]    --> src/main.rs:186:9
[INFO] [stdout]     |
[INFO] [stdout] 186 |     let mapper: &'static Mapper = Box::leak(Box::new(Mapper::new()));
[INFO] [stdout]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mapper`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `START_CHAR` is never used
[INFO] [stdout]   --> src/main.rs:19:7
[INFO] [stdout]    |
[INFO] [stdout] 19 | const START_CHAR: char = 'a';
[INFO] [stdout]    |       ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `JOINS` is never used
[INFO] [stdout]   --> src/main.rs:20:7
[INFO] [stdout]    |
[INFO] [stdout] 20 | const JOINS: [(char, char); 13] = [
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `CHARS` is never used
[INFO] [stdout]   --> src/main.rs:37:7
[INFO] [stdout]    |
[INFO] [stdout] 37 | const CHARS: &'static str = "abcdefghijklmnopqrstuvwxyz";
[INFO] [stdout]    |       ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: constant `MESSAGE` is never used
[INFO] [stdout]   --> src/main.rs:38:7
[INFO] [stdout]    |
[INFO] [stdout] 38 | const MESSAGE: &'static str = "nbvp kcesh mcrn tu g wzcj lklurj ryqf bpyj gx tm \
[INFO] [stdout]    |       ^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_possible_jumps` is never used
[INFO] [stdout]   --> src/main.rs:55:4
[INFO] [stdout]    |
[INFO] [stdout] 55 | fn get_possible_jumps() -> Vec<u8> {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `get_variants` is never used
[INFO] [stdout]   --> src/main.rs:64:4
[INFO] [stdout]    |
[INFO] [stdout] 64 | fn get_variants(chr: char) -> Vec<char> {
[INFO] [stdout]    |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `Mapper` is never constructed
[INFO] [stdout]   --> src/main.rs:72:8
[INFO] [stdout]    |
[INFO] [stdout] 72 | struct Mapper {
[INFO] [stdout]    |        ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]   --> src/main.rs:80:8
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl Mapper {
[INFO] [stdout]    | ----------- associated function in this implementation
[INFO] [stdout] 80 |     fn new() -> Self {
[INFO] [stdout]    |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `to_loc` is never used
[INFO] [stdout]   --> src/main.rs:90:4
[INFO] [stdout]    |
[INFO] [stdout] 90 | fn to_loc(val: char) -> u8 {
[INFO] [stdout]    |    ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `from_loc` is never used
[INFO] [stdout]   --> src/main.rs:96:4
[INFO] [stdout]    |
[INFO] [stdout] 96 | fn from_loc(val: u8) -> char {
[INFO] [stdout]    |    ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `SizedPermutation` is never constructed
[INFO] [stdout]    --> src/main.rs:101:8
[INFO] [stdout]     |
[INFO] [stdout] 101 | struct SizedPermutation<I: Iterator> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait `SizedPermutationIter` is never used
[INFO] [stdout]    --> src/main.rs:125:7
[INFO] [stdout]     |
[INFO] [stdout] 125 | trait SizedPermutationIter: Iterator {
[INFO] [stdout]     |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_word` is never used
[INFO] [stdout]    --> src/main.rs:143:4
[INFO] [stdout]     |
[INFO] [stdout] 143 | fn process_word(word: &str) -> impl Iterator<Item = String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_valid_decryptions` is never used
[INFO] [stdout]    --> src/main.rs:184:4
[INFO] [stdout]     |
[INFO] [stdout] 184 | fn show_valid_decryptions(word: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `process_word_threaded` is never used
[INFO] [stdout]    --> src/main.rs:198:4
[INFO] [stdout]     |
[INFO] [stdout] 198 | fn process_word_threaded(word: &str, start: usize, count: usize) -> impl Iterator<Item = String> {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_valid_decryptions_threaded` is never used
[INFO] [stdout]    --> src/main.rs:217:4
[INFO] [stdout]     |
[INFO] [stdout] 217 | fn show_valid_decryptions_threaded(word: &str, thread_count: usize) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_word_lengths` is never used
[INFO] [stdout]    --> src/main.rs:261:4
[INFO] [stdout]     |
[INFO] [stdout] 261 | fn show_word_lengths() {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `show_connections_used` is never used
[INFO] [stdout]    --> src/main.rs:273:4
[INFO] [stdout]     |
[INFO] [stdout] 273 | fn show_connections_used(word_orig: &str, word_enc: &str) {
[INFO] [stdout]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 11.25s
[INFO] running `Command { std: "docker" "inspect" "27f7a165bbcc1ae8163e72f5489c3c006c5e2a1e7bf6c616d15710a70064d3ef", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "27f7a165bbcc1ae8163e72f5489c3c006c5e2a1e7bf6c616d15710a70064d3ef", kill_on_drop: false }`
[INFO] [stdout] 27f7a165bbcc1ae8163e72f5489c3c006c5e2a1e7bf6c616d15710a70064d3ef
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+b8e88e5ddf5521a9f43ee3f62a702388c713e4bb" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 38bf16c19a029e3c2b331f5d2aa48f2c42f43fdddf75a4f6c4c19e2a5c7bc3f3
[INFO] running `Command { std: "docker" "start" "-a" "38bf16c19a029e3c2b331f5d2aa48f2c42f43fdddf75a4f6c4c19e2a5c7bc3f3", kill_on_drop: false }`
[INFO] [stderr] warning: unused import: `zzz::ProgressBar`
[INFO] [stderr]  --> src/iter_product.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use zzz::ProgressBar;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `zzz::ProgressBarIterExt as _`
[INFO] [stderr]  --> src/iter_product.rs:2:5
[INFO] [stderr]   |
[INFO] [stderr] 2 | use zzz::ProgressBarIterExt as _;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/iter_product.rs:50:16
[INFO] [stderr]    |
[INFO] [stderr] 50 |             if (count == 0) {
[INFO] [stderr]    |                ^          ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 50 -             if (count == 0) {
[INFO] [stderr] 50 +             if count == 0  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: `decrypt` (lib) generated 3 warnings (run `cargo fix --lib -p decrypt` to apply 3 suggestions)
[INFO] [stderr] warning: unused import: `radix_trie::Trie`
[INFO] [stderr]  --> src/main.rs:6:5
[INFO] [stderr]   |
[INFO] [stderr] 6 | use radix_trie::Trie;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `serde`
[INFO] [stderr]   --> src/main.rs:11:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | use serde;
[INFO] [stderr]    |     ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `zzz::ProgressBar`
[INFO] [stderr]  --> src/iter_product.rs:1:5
[INFO] [stderr]   |
[INFO] [stderr] 1 | use zzz::ProgressBar;
[INFO] [stderr]   |     ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `mapper`
[INFO] [stderr]    --> src/main.rs:186:9
[INFO] [stderr]     |
[INFO] [stderr] 186 |     let mapper: &'static Mapper = Box::leak(Box::new(Mapper::new()));
[INFO] [stderr]     |         ^^^^^^ help: if this is intentional, prefix it with an underscore: `_mapper`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `START_CHAR` is never used
[INFO] [stderr]   --> src/main.rs:19:7
[INFO] [stderr]    |
[INFO] [stderr] 19 | const START_CHAR: char = 'a';
[INFO] [stderr]    |       ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: constant `JOINS` is never used
[INFO] [stderr]   --> src/main.rs:20:7
[INFO] [stderr]    |
[INFO] [stderr] 20 | const JOINS: [(char, char); 13] = [
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `CHARS` is never used
[INFO] [stderr]   --> src/main.rs:37:7
[INFO] [stderr]    |
[INFO] [stderr] 37 | const CHARS: &'static str = "abcdefghijklmnopqrstuvwxyz";
[INFO] [stderr]    |       ^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: constant `MESSAGE` is never used
[INFO] [stderr]   --> src/main.rs:38:7
[INFO] [stderr]    |
[INFO] [stderr] 38 | const MESSAGE: &'static str = "nbvp kcesh mcrn tu g wzcj lklurj ryqf bpyj gx tm \
[INFO] [stderr]    |       ^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_possible_jumps` is never used
[INFO] [stderr]   --> src/main.rs:55:4
[INFO] [stderr]    |
[INFO] [stderr] 55 | fn get_possible_jumps() -> Vec<u8> {
[INFO] [stderr]    |    ^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `get_variants` is never used
[INFO] [stderr]   --> src/main.rs:64:4
[INFO] [stderr]    |
[INFO] [stderr] 64 | fn get_variants(chr: char) -> Vec<char> {
[INFO] [stderr]    |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `Mapper` is never constructed
[INFO] [stderr]   --> src/main.rs:72:8
[INFO] [stderr]    |
[INFO] [stderr] 72 | struct Mapper {
[INFO] [stderr]    |        ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]   --> src/main.rs:80:8
[INFO] [stderr]    |
[INFO] [stderr] 79 | impl Mapper {
[INFO] [stderr]    | ----------- associated function in this implementation
[INFO] [stderr] 80 |     fn new() -> Self {
[INFO] [stderr]    |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `to_loc` is never used
[INFO] [stderr]   --> src/main.rs:90:4
[INFO] [stderr]    |
[INFO] [stderr] 90 | fn to_loc(val: char) -> u8 {
[INFO] [stderr]    |    ^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `from_loc` is never used
[INFO] [stderr]   --> src/main.rs:96:4
[INFO] [stderr]    |
[INFO] [stderr] 96 | fn from_loc(val: u8) -> char {
[INFO] [stderr]    |    ^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: struct `SizedPermutation` is never constructed
[INFO] [stderr]    --> src/main.rs:101:8
[INFO] [stderr]     |
[INFO] [stderr] 101 | struct SizedPermutation<I: Iterator> {
[INFO] [stderr]     |        ^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: trait `SizedPermutationIter` is never used
[INFO] [stderr]    --> src/main.rs:125:7
[INFO] [stderr]     |
[INFO] [stderr] 125 | trait SizedPermutationIter: Iterator {
[INFO] [stderr]     |       ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `process_word` is never used
[INFO] [stderr]    --> src/main.rs:143:4
[INFO] [stderr]     |
[INFO] [stderr] 143 | fn process_word(word: &str) -> impl Iterator<Item = String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_valid_decryptions` is never used
[INFO] [stderr]    --> src/main.rs:184:4
[INFO] [stderr]     |
[INFO] [stderr] 184 | fn show_valid_decryptions(word: &str) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `process_word_threaded` is never used
[INFO] [stderr]    --> src/main.rs:198:4
[INFO] [stderr]     |
[INFO] [stderr] 198 | fn process_word_threaded(word: &str, start: usize, count: usize) -> impl Iterator<Item = String> {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_valid_decryptions_threaded` is never used
[INFO] [stderr]    --> src/main.rs:217:4
[INFO] [stderr]     |
[INFO] [stderr] 217 | fn show_valid_decryptions_threaded(word: &str, thread_count: usize) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_word_lengths` is never used
[INFO] [stderr]    --> src/main.rs:261:4
[INFO] [stderr]     |
[INFO] [stderr] 261 | fn show_word_lengths() {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: function `show_connections_used` is never used
[INFO] [stderr]    --> src/main.rs:273:4
[INFO] [stderr]     |
[INFO] [stderr] 273 | fn show_connections_used(word_orig: &str, word_enc: &str) {
[INFO] [stderr]     |    ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: `decrypt` (bin "decrypt" test) generated 24 warnings (2 duplicates) (run `cargo fix --bin "decrypt" -p decrypt --tests` to apply 4 suggestions)
[INFO] [stderr] warning: `decrypt` (lib test) generated 3 warnings (3 duplicates)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.09s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/decrypt-1afc69008d4620fb)
[INFO] [stdout] running 3 tests
[INFO] [stdout] test iter_product::tests::test_forward ... ok
[INFO] [stdout] test iter_product::tests::test_iter ... ok
[INFO] [stdout] test chars::tests::test_all ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/decrypt-f4a18e024432a533)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test chars::tests::test_all ... ok
[INFO] [stdout] test iter_product::tests::test_forward ... ok
[INFO] [stdout] test iter_product::tests::test_iter ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests decrypt
[INFO] [stderr] warning: unnecessary parentheses around `if` condition
[INFO] [stderr]   --> src/iter_product.rs:50:16
[INFO] [stderr]    |
[INFO] [stderr] 50 |             if (count == 0) {
[INFO] [stderr]    |                ^          ^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]    |
[INFO] [stderr] 50 -             if (count == 0) {
[INFO] [stderr] 50 +             if count == 0  {
[INFO] [stderr]    |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "38bf16c19a029e3c2b331f5d2aa48f2c42f43fdddf75a4f6c4c19e2a5c7bc3f3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "38bf16c19a029e3c2b331f5d2aa48f2c42f43fdddf75a4f6c4c19e2a5c7bc3f3", kill_on_drop: false }`
[INFO] [stdout] 38bf16c19a029e3c2b331f5d2aa48f2c42f43fdddf75a4f6c4c19e2a5c7bc3f3
